MySQL 数据库基础命令

本文中尖括号 <> 表示占位符,方括号 [] 表示可选,而圆括号 () 则是 MySQL 语法的一部分。

数据库的操作命令

1-- 创建数据库
2CREATE DATABASE <数据库名>;
3
4-- 删除数据库
5DROP DATABASE <数据库名>;
6
7-- 修改数据库
8ALTER DATABASE <数据库名> MODIFY <字段> = <>;
9
10-- 使用数据库
11USE <数据库名>;
12
13-- 查看数据库中的所有表
14SHOW TABLES;

例如:

1-- 修改数据库名称
2ALTER DATABASE db_name MODIFY NAME = new_db_name;

授权命令

1GRANT <操作列表> ON <数据库名>.<表名> TO '<用户名>'@'<主机>';

例如:

1-- 运行 user 用户操作 localhost 上的 db_name 数据库中的所有表
2GRANT CREATE,ALTER,DROP,INDEX,SELECT,INSERT,UPDATE,DELETE ON db_name.* TO 'user'@'localhost';

表的操作命令

1-- 创建表
2CREATE TABLE [IF NOT EXISTS] <表名> (
3    <列名1> <数据类型> [约束条件] [COMMENT '<注释>']
4    <列名2> <数据类型> [约束条件] [COMMENT '<注释>']
5    ...
6    [PRIMARY KEY (<列名>)]                                  -- 主键
7    [INDEX <索引名> (<列名>)]                               -- 索引
8    [UNIQUE (<列名>)]                                       -- 唯一约束
9    [FOREIGN KEY (<列名>) REFERENCES <其它表>(<列名>)]      -- 外键约束
10)
11
12-- 删除表
13DROP TABLE [IF EXISTS] <表名>;
14
15-- 修改表名
16ALTER TABLE <原表名> RENAME TO <新表名>;
17RENAME TABLE <原表名> TO <新表名>;
18
19-- 查看表结构
20DESC <表名>21SHOW CREATE TABLE <表名>;
22SHOW COLUMNS FROM <表名>;
23SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '<表名>';
24
25-- 查看表的状态
26SHOW TABLE STATUS WHERE name='<表名>';

数据的增删改查

1-- 插入数据
2INSERT INTO <表名> (<列名1>, <列名2>, ...) VALUES 
3(<1>, <2>, ...) 
4[ , (<1>, <2>, ...), ... ];
5
6-- 查询数据
7SELECT <列名1>, <列名2>, ... FROM <表名> 
8[ WHERE <条件> ]             
9[ ORDER BY <列名> [DESC] ]  -- 排序
10[ LIMIT <数量> ]            -- 分页
11[ LIMIT <偏移量> ]
12[ GROUP BY <列名> ];        -- 分组
13
14-- 更新数据
15UPDATE <表名> SET 
16<列名1>=<1>
17[ , <列名2>=<2>, ... ]
18[ WHERE <条件> ];
19
20-- 删除数据
21DELETE FROM <表名> [ WHERE <条件> ];

事务

1-- 开始事务
2START TRANSACTION;
3
4-- 提交事务
5COMMIT6
7-- 回滚事务
8ROLLBACK